/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.eagleeyes.hoverbuttons;

/**
 * The event listener for an EEFocusable.  Because Eagle Eyes has no clicking, a focus is performed by hovering
 * over a Focusable for a certain amount of time.  During this time, the EEFocusable will be <b>highlighted.</b>
 * Its event listener's highlight() method will be called during this time to allow feedback to be shown.
 * Once the time is up, the focus() method will be called.
 * @author Jesse Bahr
 */
public interface EEFocusableListener {
  
  /**
   * focus has been given to the Focusable.  A focus is similar to a mouse click.
   */
  void focus();
  
  /**
   * a hover has occurred and a focus will occur unless the mouse moves.  
   * @param percent the percent to focus, from 0 to 1.
   */
  void highlight(float percent);
  
  /**
   * the mouse moved and the item is no longer hovered.
   */
  void unhighlight();
}
